const str = "1342342342.22541"

// 方法1：toLocaleString  --- 问题：小数点后面只会留下3位
function fn1 (str) {
  return str.toLocaleString();
}

// 方法2：分割成单个字符的字符数组
function fn2 (str) {
  const arr = str.split(".");
  const s1 = arr[0], s2 = arr[1];
  
  let ans = [];
  
  // 处理小数点前的部分
  for (let i = s1.length; i > 0; i -= 3) {
    let j = i - 3 >= 0 ? i - 3 : 0;
    let tempStr = s1.substring(j, i);
    ans.unshift(tempStr);  // unshift 直接添加, 不再使用逗号
  }
  
  // 处理小数点后的部分
  if (s2) {
    ans.push('.');  // 添加小数点
    for (let i = 0; i < s2.length; i += 3) {
      let j = i + 3 <= s2.length ? i + 3 : s2.length;
      let tempStr = s2.substring(i, j);
      ans.push(tempStr);  // 直接添加, 不再使用逗号
    }
  }

  // 将整数部分用逗号连接成字符串
  const integerPart = ans.slice(0, ans.indexOf('.') !== -1 ? ans.indexOf('.') : undefined).join(",");

  // 小数部分直接拼接
  const decimalPart = ans.indexOf('.') !== -1 ? ans.slice(ans.indexOf('.')).join(",") : "";
  console.log(decimalPart)

  // 合并最终结果
  return integerPart + '.' + decimalPart.substring(2);
  
}




// console.log(fn1(str))
console.log(fn2(str))